/* 描述
 * 计时、不换行输出
 */
/* 编译
 * g++ CodingTraining/cpp/log/dataMonitor.cpp -o dataMonitor.exe -I. -DDEBUG -fexec-charset=GBK
 */
#include<iostream>
#include<time.h>
#include"../log/log.h"

int main(void)
{
    double  duration;
    /* 测量一个事件持续的时间*/
    clock_t start = clock();
    clock_t s = start;
    int a=0, b=0, c=0;
    

    while (1) {
        clock_t now = clock();
        if ((now - start) >= 10) { // 每过 10 毫秒进入一次if
            start = now;
            a++;
            if(a%10==0) {
                b++;
                if(b%10==0) {
                    c++;
                    if(c==10) break;
                }
            }
            printf("c=%1d, b=%2d, a=%3d\r", c, b, a); // 转义符\r可以让输出光标回到当前行的第一格，在这个基础上打印信息会复写原本的打印
            // printf("c=%1d, b=%2d, a=%3d", c, b, a);
            // printf("\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b"); // 转义符\b可以退格，一个\b退一格，退格只会移动光标，不会删除现有信息
        }
    }
    LOG("totoal time: %f",(double)(clock()-s)/CLOCKS_PER_SEC); // 打印总花费时间
    return 0;
}